-
-
Notifications
You must be signed in to change notification settings - Fork 8.6k
[py] Support Python 3.14 and drop Python 3.9 #16342
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Explore these optional code suggestions:
|
|||||||||
|
No issues if the CI passes with 3.10, which it does, there seems to be a minor issue with docs and mypy CI, it is looking for python 3.1 instead of 3.10. |
|
I agree w/ @navin772, as long as we can fully support the next up I'd like to keep us from supporting anything not supported by the Python project. To answer your question directly though, I am not aware of any issues w/ dropping 3.9 specifically. |
Fixed. I'll merge this in a few days after 3.14 is officially released. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
User description
💥 What does this PR do?
Adds support for Python 3.14 (released: 10/7/2025): https://docs.python.org/3/whatsnew/3.14.html
Drops support for Python 3.9. This version is officially EOL as of 10/31/2025. Some of our dependencies have already dropped support for 3.9 and it is becoming problematic to continue supporting it.
Changes the default version of Python we use in CI workflow jobs to 3.10
Updates all Python dependencies for testing and packaging.
Updates Bazel and workflow configurations to enable running unit tests on the oldest/newest versions on Python we support.
Removes build requirement from CI jobs that don't require it
🔄 Types of changes
PR Type
Enhancement
Description
Add Python 3.14 support and drop Python 3.9
Update CI default Python version to 3.10
Upgrade dependencies and build tools
Update documentation and installation instructions
Diagram Walkthrough
File Walkthrough
5 files
Update CI Python version to 3.10Update documentation workflow Python versionUpdate Python toolchain and dependenciesUpdate Python classifiers and requirementsUpdate Python requirements and dependencies5 files
Update ruff version to 0.13.3Upgrade Sphinx to 8.1.3Update development dependenciesRegenerate locked requirements for Python 3.10Update mypy and ruff versions1 files
Update supported Python version documentation